package br.com.usapre.faces;

import java.util.ArrayList;
import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;

import br.com.business.PerguntaRespostaBusiness;
import br.com.data.PerguntaResposta;
import br.com.utilidades.database.data.Criterio;

/**
 * @version 1.0.0
 * @since Fevereiro,28 2013
 * @author Eduardo Francisco Barbosa
 */
@Component
@Scope("view")
public class DuvidasFrequentesBean {

    private PerguntaRespostaBusiness perguntaRespostaBusinessImpl;

    private String campoBusca;

    private List<PerguntaResposta> perguntas;

    /**
     * Construtor
     */
    @Autowired
    public DuvidasFrequentesBean(PerguntaRespostaBusiness perguntaRespostaBusinessImpl) {

	this.perguntaRespostaBusinessImpl = perguntaRespostaBusinessImpl;

	reset();
    }

    /**
     * reset
     */
    public void reset() {

	campoBusca = "";

	perguntas = new ArrayList<PerguntaResposta>();

	buscar();

    }

    /**
     * buscar
     */
    public void buscar() {

	List<Criterio> criterios = new ArrayList<Criterio>();

	Criterio crit = new Criterio();

	crit.setCampo("faq.id");
	crit.setComparacao("=");
	crit.setTipo(Criterio.TIPO_INTEGER);
	crit.setValue(1);

	criterios.add(crit);

	Criterio crit2 = new Criterio();

	crit2.setCampo("pergunta");
	crit2.setComparacao("like");
	crit2.setTipo(Criterio.TIPO_STRING_CASE_SENSITIVE);
	crit2.setValue("%" + campoBusca + "%");

	criterios.add(crit2);

	perguntas = perguntaRespostaBusinessImpl.buscarPorCriterios(criterios, "");

    }

    // SETS AND GETS
    public String getCampoBusca() {
	return campoBusca;
    }

    public void setCampoBusca(String campoBusca) {
	this.campoBusca = campoBusca;
    }

    public List<PerguntaResposta> getPerguntas() {
	return perguntas;
    }

    public void setPerguntas(List<PerguntaResposta> perguntas) {
	this.perguntas = perguntas;
    }

}
